package com.ruoyi.travel.domain;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 行程库内容对象 travel_itinerary_content
 */
public class TravelItineraryContent extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 行程内容ID */
    private Long itineraryContentId;

    /** 所属行程库ID */
    private Long itineraryId;

    /** 行程内容名称 */
    private String itineraryContentName;

    /** 旅行时长数值 */
    private Double travelDurationNumber;

    /** 旅行时长单位（天/时） */
    private String travelDurationUnit;

    /** 行程内容描述 */
    private String itineraryContent;

    /** 图片1URL */
    private String picture1;

    /** 图片2URL */
    private String picture2;

    /** 图片3URL */
    private String picture3;

    /** 反向关联的行程库（避免JSON循环引用） */

    private TravelItinerary travelItinerary;

    // 全量Getters and Setters（严格对应字段名）
    public Long getItineraryContentId() { return itineraryContentId; }
    public void setItineraryContentId(Long itineraryContentId) { this.itineraryContentId = itineraryContentId; }

    public Long getItineraryId() { return itineraryId; }
    public void setItineraryId(Long itineraryId) { this.itineraryId = itineraryId; }

    public String getItineraryContentName() {
        return itineraryContentName;
    }

    public void setItineraryContentName(String itineraryContentName) {
        this.itineraryContentName = itineraryContentName;
    }

    public Double getTravelDurationNumber() { return travelDurationNumber; }
    public void setTravelDurationNumber(Double travelDurationNumber) { this.travelDurationNumber = travelDurationNumber; }

    public String getTravelDurationUnit() { return travelDurationUnit; }
    public void setTravelDurationUnit(String travelDurationUnit) { this.travelDurationUnit = travelDurationUnit; }

    public String getItineraryContent() { return itineraryContent; }
    public void setItineraryContent(String itineraryContent) { this.itineraryContent = itineraryContent; }

    public String getPicture1() { return picture1; }
    public void setPicture1(String picture1) { this.picture1 = picture1; }

    public String getPicture2() { return picture2; }
    public void setPicture2(String picture2) { this.picture2 = picture2; }

    public String getPicture3() { return picture3; }
    public void setPicture3(String picture3) { this.picture3 = picture3; }

    public TravelItinerary getTravelItinerary() { return travelItinerary; }
    public void setTravelItinerary(TravelItinerary travelItinerary) { this.travelItinerary = travelItinerary; }

    @Override
    public String toString() {
        return "TravelItineraryContent{" +
                "itineraryContentId=" + itineraryContentId +
                ", itineraryId=" + itineraryId +
                ", itineraryContentName='" + itineraryContentName + '\'' +
                ", travelDurationNumber=" + travelDurationNumber +
                ", travelDurationUnit='" + travelDurationUnit + '\'' +
                ", itineraryContent='" + itineraryContent + '\'' +
                ", picture1='" + picture1 + '\'' +
                ", picture2='" + picture2 + '\'' +
                ", picture3='" + picture3 + '\'' +
                '}';
    }
}
